PLTO: A Link-Time Optimizer for the Intel IA-32 Architecture

نویسندگان

  • Benjamin Schwarz
  • Saumya Debray
  • Gregory Andrews
  • Matthew Legendre
چکیده

This paper describes PLTO, a link-time instrumentation and optimization tool we have developed for the Intel IA-32 architecture. A number of characteristics of this architecture complicate the task of link-time optimization. These include a large number of op-codes and addressing modes, which increases the complexity of program analysis; variable-length instructions, which complicates disassembly of machine code; a paucity of available registers, which limits the extent of some optimizations; and a reliance on using memory locations for holding values and for parameter passing, which complicates program analysis and optimization. We describe how PLTO addresses these problems and the resulting performance improvements it is able to achieve.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Post Link-Time Optimization on the Intel IA-32 Architecture

Post link-time optimization of executables has been investigated by several projects in recent years. These optimization systems have targeted RISC architectures like the Compaq Alpha, and have shown that there is considerable room for improvement in compiler-generated code. Classical compiler optimizations like constant propagation, function inlining, and dead code elimination have been shown ...

متن کامل

Predicate Analysis and If-Conversion in an Itanium Link-Time Optimizer

EPIC architectures, such as the Intel IA-64 (Itanium), combine explicit instruction-level parallelism with instruction predication. To generate efficient code, it is important to use predication effectively. In particular, it is important to replace conditional branches and multiple code blocks by single, branch-free code blocks when doing so would lead to faster code. This process, which is kn...

متن کامل

The StarJIT Compiler: A Dynamic Compiler for Managed Runtime Environments

Dynamic compilers (or Just-in-Time [JIT] compilers) are a key component of managed runtime environments. This paper describes the design and implementation of the StarJIT compiler, a dynamic compiler for Java Virtual Machines and Common Language Runtime platforms. The goal of the StarJIT compiler is to build an infrastructure to research the influence of managed runtime environments on Intel ar...

متن کامل

Intel Virtualization Technology: Hardware Support for Efficient Processor Virtualization

Virtualizing the physical resources of a computing system to improve sharing and utilization has been done for decades. Virtualization had once been confined to specialized server and mainframe systems, but improvements in the performance of platforms based on Intel technology now allow those platforms to efficiently support virtualization. However, the IA-32 and Itanium processor architectures...

متن کامل

Industry-standard server solutions architectures

Executive summary HP, Microsoft, and Intel ® have joined forces to demonstrate superior performance and scalability for the Windows enterprise data center. New options are available that bring greater scalability and performance to applications through the introduction of the 64-bit Intel Itanium ® architecture for industry-standard platforms; Windows Server 2003, which supports up to 64 Intel ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2001